闲话 22.7.22

关于闲话

?为什么T1二分会炸(废话你贪心错了

但是T1的错误二分为T2正确的三分提供了很好的思路,虽然T2还是没A掉(最后直接拟合数据了

T3 manacher T4 分治 真有你的啊

突然很想听雾霭相随 是星界而不是世界唱的那种
还想听月光 虽然术力口版确实好听但是本家版实在是很抓耳朵

前几天吐槽“明明听的最多的是假定之夏但却唱不出来 匹老板的转生林檎才听了几遍就会唱了”
突然发现现在转生苹果已经不太会了 而假定之夏还是不会至少凭 肌肉记忆 刻意练习 还是唱的出一点 嗯
每次唱转生苹果都会想到糖的Andromeda我不知道为什么

关于cdq

通过一些转换,我们可以将树上的偏序关系转换到序列上的偏序关系,并增加维度离线求解。

P8575

根为1的树,每个节点 i 有一个二元组 (ai,bi) 作为点权。询问每个点子树上(不包含该点)点权小于等于该点点权的点的个数。

(ai,bi)(aj,bj)aiaj bibj

具体地,记 [li, ri]i 对应的欧拉序。由性质可知,任意节点 p 的子节点 s 都有 lp<ls<rs<rp 。这样,我们就把树上的祖先关系转化成了序列上的包含问题。而包含问题显然可以作为单维偏序在cdq分治中出现。我们只需要确定与原命题等价的关系 lp<ls<rp ,并使用树状数组维护即可。

没想好起什么名字所以还没出

根为1的树,每个节点 i 有一个点权 ai。询问每个点子树上(不包含该点)小于等于该点点权的点权种类。

通过相似的方法,我们也可以将其转化成序列问题。

仍然考虑欧拉序。同时,对于节点 i ,记 lasti=[llast,rlast] 为上一个点权等于 ai 的点对应欧拉序区间。设 pi 的祖先,我们讨论 ip 的贡献。首先设aiap。我们发现,若 rlast<lp,则可以确定,在 dfs 过程中,i 是第一个被遍历到的值为 ai 的节点。在这种情况下,我们让 ip 作贡献。在其他情况下则不作贡献。

这种思路将区间去重信息维护的思路推广到了树上,因此是正确的。发现从维护 last 中可以再提取出一维偏序信息,因此仍然可以通过cdq分治进行维护。

通过此类思想,我们可以将一类树上查询等价到序列上,进行一系列范围的转换,最后抽象出偏序信息进行求解。

posted @   joke3579  阅读(181)  评论(3编辑  收藏  举报
相关博文:
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
点击右上角即可分享
微信分享提示